package com.cmwa.solution.business.customerEquity.estimate.service;

import java.io.OutputStream;
import java.util.List;
import java.util.Map;

import com.cmwa.solution.base.entity.Page;
import com.cmwa.solution.base.entity.SearchParam;
import com.cmwa.solution.business.customerEquity.estimate.entity.EstimateInfoVo;
import com.cmwa.solution.sys.attach.entity.AttachVo;
/**
 * 估值表业务接口层
 * 
 * @author ex-zhengqq
 * @date 2019-01-23 13:34:46
 */
public interface EstimateInfoService {
	public void insertEstimateInfo(EstimateInfoVo estimateInfo);
	
	public void physicDeleteEstimateInfoById(String id);
	
	public void logicDeleteEstimateInfoById(String id);
	
	public void updateEstimateInfoById(EstimateInfoVo estimateInfo);
	
	public EstimateInfoVo getEstimateInfoById(String id);
	
	public Page<EstimateInfoVo> estimateInfoListPage(SearchParam sp);
	
	public void addAttachRel(EstimateInfoVo estimateInfoVo);
	
	public List<Map<String, String>> countReportData(String reprotDateBgn, String reprotDateEnd);
	
	public List<String> getAttachByIdEstimateData(String[] id);
	
	public List<String> getAttachByIdEstimateFile(String[] id);

	public void updateEstimateInfo(EstimateInfoVo estimateInfoVo);

	public List<AttachVo> queryAttInfoById(String estimateId, String type);

	public String getAttachByDateEstimateFile(String startDate, String endDate);

	public void deleteAttach(String estimateId, String attSource);
	
	public void downloadAttachZip(List<AttachVo> attList, OutputStream out, String isBatch) throws Exception;

	public String joinInSql(String estimateIds);
}
